# 基础镜像
FROM registry.cn-shanghai.aliyuncs.com/coutil/python:3.12-slim-bookworm

# 设置工作目录
WORKDIR /code

# 修改 APT 源为阿里云镜像
RUN sed -i 's@deb.debian.org@mirrors.aliyun.com@g' /etc/apt/sources.list.d/debian.sources

# 更新 APT 源并安装系统依赖，包括 libGL.so.1 所需的库
RUN apt-get update && apt-get install -y --fix-missing \
    libreoffice \
    libreoffice-common \
    poppler-utils \
    vim \
    libgl1-mesa-glx \
    && rm -rf /var/lib/apt/lists/*

# 复制 requirements.txt 文件，利用 Docker 缓存
COPY requirements.txt /code/

# 安装 Python 依赖
RUN pip install --no-cache-dir -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt
#RUN pip install --no-cache-dir -r requirements.txt

# 复制项目代码
COPY . /code

# 赋予入口脚本执行权限
RUN chmod +x /code/docker/entrypoint.sh

# 设置入口命令
ENTRYPOINT ["/bin/bash", "/code/docker/entrypoint.sh"]